import * as React from 'react'; import { Card, View, Image, Badge, Button, Flex, Divider, Heading, Collection, FlexContainerStyleProps, } from '@aws-amplify/ui-react'; import { Demo } from '@/components/Demo'; import { demoState } from '@/utils/demoState'; import { CollectionPropControls } from './CollectionPropControls'; import { useCollectionProps } from './useCollectionProps'; import { filterDemoProps, getDemoProps, objectEntriesToPropString, } from '../utils/demoProps'; const propsToCode = (props) => { const filteredProps = filterDemoProps(props); return ` const items = [ { title: 'Milford - Room #1', badges: ['Waterfront', 'Verified'], }, { title: 'Milford - Room #2', badges: ['Mountain', 'Verified'], }, ]; {(item, index) => ( Glittering stream with old log, snowy mountain peaks tower over a green field. {item.badges.map((badge) => ( {badge} ))} {item.title} )} `; }; const defaultValues = { direction: 'row', gap: '20px', wrap: 'nowrap', }; export const CollectionDemo = () => { const collectionProps = useCollectionProps( demoState.get(Collection.displayName) || defaultValues ); const demoProps = ['alignContent', 'alignItems', 'direction', 'gap', 'wrap']; const collectionDemoProps = getDemoProps(collectionProps, demoProps); const items = [ { title: 'Milford - Room #1', badges: ['Waterfront', 'Verified'], }, { title: 'Milford - Room #2', badges: ['Mountain', 'Verified'], }, ]; return ( } > {(item, index) => ( Glittering stream with old log, snowy mountain peaks tower over a green field. {item.badges.map((badge) => ( {badge} ))} {item.title} )} ); };